home *** CD-ROM | disk | FTP | other *** search
Text File | 1993-02-11 | 3.4 KB | 152 lines | [TEXT/ALFA] |
- # The following three procs, together w/ the initialization
- # for the flags below, allow a totally Tcl-controlled menu to
- # shadow Alpha's internal variables.
- proc initFlag var {
- global $var
- addMenuItem -m Flags $var
- trace vdelete $var w shadowFlag
- shadowVar $var
- markMenuItem Flags $var [expr ([set $var])?"on":"off"]
- trace variable $var w shadowFlag
- }
-
- # Called for ordinary tcl global vars we want included in the Flags menu.
- proc initTclFlag flag {
- global $flag
- addMenuItem -m Flags $flag
- if {![info exists $flag]} {set $flag 0}
- markMenuItem Flags $flag [expr ([set $flag])?"on":"off"]
- trace variable $flag w shadowFlag
- }
-
- # Called for ordinary tcl global vars we want included in the Vars menu.
- proc initTclVar var {
- global $var
- addMenuItem -m Vars $var
- if {![info exists $var]} {set $var 0}
- }
-
- proc shadowFlag {nm1 nm2 op} {
- global $nm1
- markMenuItem Flags $nm1 [expr [set $nm1]?"on":"off"]
- }
-
- # 'fullNames' needs to be traced to update win menu.
- if {![info exists oldFNames]} {set oldFNames 0}
- proc shadowFullNames args {
- global winNameToNum
- global fullNames
- global oldFNames
-
- if {$fullNames == $oldFNames} {return $fullNames}
- set oldFNames $fullNames
-
- if {[catch {set nms [array names winNameToNum]}] == "1"} {
- return $fullNames
- }
-
- if {$fullNames == "1"} {
- foreach name $nms {
- if {$winNameToNum($name) < 10} {
- set lab /$winNameToNum($name)
- } else {set lab ""}
- regexp {[^:]*$} $name nm
- catch {deleteMenuItem -m Wins $nm}
- addMenuItem -m -l $lab Wins $name
- }
- } else {
- foreach name $nms {
- if {$winNameToNum($name) < 10} {
- set lab /$winNameToNum($name)
- } else {set lab ""}
- regexp {[^:]*$} $name nm
- catch {deleteMenuItem -m Wins $name}
- addMenuItem -m -l $lab Wins $nm
- }
- }
- return $fullNames
- }
-
- proc initVar var {
- global $var
- shadowVar $var
- addMenuItem -m Vars $var
- }
-
- # Keep 'currFileSet' up to date.
- trace vdelete currFileSet w shadowCurrFileSet
- trace variable currFileSet w shadowCurrFileSet
- proc shadowCurrFileSet {nm1 nm2 op} {
- global fileSetNames
- global currFileSet
- foreach name $fileSetNames {
- if {$name == $currFileSet} {
- markMenuItem fileSets $name on
- } else {
- markMenuItem fileSets $name off
- }
- }
- return $currFileSet
- }
-
-
- # This file contains methods allowing the shadowing of tcl variables
-
- initFlag autoSave
- initFlag backup
- initFlag backupFolder
- initFlag bwWindows
- initFlag elecLBrace
- initFlag elecRBrace
- initFlag electricSemi
- initFlag fullNames
- trace vdelete fullNames w shadowFullNames
- trace variable fullNames w shadowFullNames
- initFlag fullScreen
- initTclFlag iconifyOnSwitch
- initFlag indentOnCR
- initFlag moveInsertion
- initFlag openAllFiles
- initFlag optionIsMeta
- initFlag posActivate
- initFlag powerThumb
- initFlag projectorAware
- initFlag showRowCol
- initFlag showMenuHeads
- initFlag sortedIsDefault
- initFlag suppressHeader
- initFlag tempMem
- initFlag undoOn
- initFlag wordWrap
-
- initVar backExtension
- initVar backupFolderName
- initVar bottomMargin
- initVar changesLim
- initVar defHeight
- initVar defWidth
- initVar defaultFont
- initVar fillColumn
- initVar fontSaving
- initVar fontSize
- initVar funcExpr
- initVar funcPar
- initVar funcTitle
- initVar leftFillColumn
- initVar leftMargin
- initVar markLabel
- initVar markSorting
- initVar numWinsToTile
- initVar paraColumn
- initVar printerFont
- initVar replaceStr
- initVar savedState
- initVar searchStr
- initVar sortColumn
- initVar tabSize
- initVar tagFile
- initVar topMargin
- initVar wordBreak
- initVar wordBreakPreface
-
-